package com.example.autopia.model.Repositories

import com.example.autopia.R
import com.example.autopia.model.Item.Car
import com.example.autopia.model.Item.Card
import com.example.autopia.model.Item.Comment
import com.example.autopia.model.Item.HotNews
import com.example.autopia.model.Item.News
import com.example.autopia.model.Item.Parking
import com.example.autopia.model.Item.Place
import com.example.autopia.model.Item.Transaction
import com.example.autopia.model.Item.User

object TestRepository {
    fun getParkingList(): ArrayList<Parking> {
        val parkingList = ArrayList<Parking>()
        parkingList.add(
            Parking(
                "1",
                "Тц Бурундук",
                "Коктыбельская, 43",
                300,
                "Вьезд с первой парковой, парковка распологается под открытым небом, в три ряда. Парковка классна тем то тем, и еще и прикольная туда сюда",
                80,
                21,
                getPlaceList()
            )
        )

        parkingList.add(
            Parking(
                "2",
                "Тц ГОРШОК",
                "ДерьмоКабачковая, 25",
                300,
                "Вьезд с первого удара в лицо от наташи , парковка распологается никогда и без поцелуев, в три ряда. Парковка классна тем то тем, и еще и прикольная туда сюда",
                80,
                21,
                getPlaceList()
            )
        )

        parkingList.add(
            Parking(
                "3",
                "Тц Павла",
                "Олигархная, 69",
                999,
                "Вьезд с первой парковой, парковка распологается под открытым небом, в три ряда. Парковка классна тем то тем, и еще и прикольная туда сюда",
                80,
                21,
                getPlaceList()
            )
        )
        return parkingList
    }

    fun getCar() = Car("Hundai Solaris 1", "у777уу777", "black")
    fun getUser(): User {
        val list = ArrayList<Car>()
        list.add(getCar())
        list.add(getCar())
        return User("1", "agavrilov2@.mgg.ro", "21313", list, "Натуссик", "121212")
    }

    fun getPlaceList(): ArrayList<Place> {
        val list = ArrayList<Place>()
        list.add(Place("1", 1, getCar(), "1"))
        list.add(Place("2", 1, getCar(), "11"))
        list.add(Place("3", 2, getCar(), "213"))
        return list
    }

    fun getPlaceListForCreate(): ArrayList<Place> {
        val list = ArrayList<Place>()
        list.add(Place("A1", 0, getCar(), "nothing"))
        list.add(Place("A2", 0, getCar(), "nothing"))
        list.add(Place("A3", 0, getCar(), "nothing"))
        list.add(Place("A4", 0, getCar(), "nothing"))
        list.add(Place("A5", 0, getCar(), "nothing"))

        list.add(Place("B1", 0, getCar(), "nothing"))
        list.add(Place("B2", 0, getCar(), "nothing"))
        list.add(Place("B3", 0, getCar(), "nothing"))
        list.add(Place("B4", 0, getCar(), "nothing"))
        list.add(Place("B5", 0, getCar(), "nothing"))
        return list
    }

    fun getCommentList(): ArrayList<Comment> {
        val list = ArrayList<Comment>()
        list.add(Comment("1","Ваня","1","Дерьмо",23))
        list.add(Comment("2","Даня","1","Дерьмо",23))
        list.add(Comment("3","Саня","1","Дерьмо",23))
        return list
    }
    fun getCardList(): ArrayList<Card> {
        val list = ArrayList<Card>()
        list.add(Card("1", "Паралелипед Куриный", "02/22", 111))
        list.add(Card("213123123", "Суп из дарсика", "02/22",111))
        list.add(Card("313123123", " Очень вкусный", "03/22",111))
        return list
    }
    fun getTransactionList(): ArrayList<Transaction> {
        val list = ArrayList<Transaction>()
        list.add(
            Transaction(
                "1",
                getPlaceList().get(0),
                getParkingList().get(0).name,
                getParkingList().get(0).id,
                false,
                getParkingList().get(0).price,
                23123,
                213123
            )
        )
        list.add(
            Transaction(
                "2",
                getPlaceList().get(1),
                getParkingList().get(1).name,
                getParkingList().get(1).id,
                false,
                getParkingList().get(1).price,
                12313,
                12313
            )
        )
        list.add(
            Transaction(
                "3",
                getPlaceList().get(2),
                getParkingList().get(2).name,
                getParkingList().get(2).id,
                true,
                getParkingList().get(2).price,
                13123,
                2313
            )
        )
        return list
    }

    fun getHotNews()  :ArrayList<HotNews>{
        val list = ArrayList<HotNews>()
        list.add(HotNews( "","","Перестройка Москвы"))
        list.add(HotNews("", "","Пожар в мос. области"))
        list.add(HotNews("","","Отключение электричества"))
        return list
    }

    fun getNewses(): ArrayList<News> {
        val list = ArrayList<News>()
        list.add(
            News(
                "1",
                "",
                "Тц Горошек",
                21,
                this.getCommentList(),
                "Не работает шлагбаум и еще что то там, туда сюда, а так же там то там",
                "Всвязи с тем-то тем, а так же еще тем и тем, теперь там стоит регулировщик по имени Наташа, она нереальное солнце и счастье",
            )
        )
        list.add(
            News(
                "2",
               "",
                "Тц Ромашка",
                41,
                this.getCommentList(),
                "Не работает все как и обычно",
                "Всвязи с тем-то тем, а апьзщрзхрщпьзлждрезжьрьз уватщквыдпкь щ лкпь джа0щ3цкщ риа дбщд бу е",
                2,
                ""
            )
        )
        return list
    }

}